﻿
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sproc_AddProject]') AND type in (N'P', N'PC'))
    DROP PROCEDURE [dbo].[sproc_AddProject];
GO
CREATE PROCEDURE [dbo].[sproc_AddProject] 
    @ParentID int,
    @ProjectName nvarchar(50),
    @ProjectRemark text,
    @Wright nvarchar(50),
    @Status int,
    @Scale int,
    @StartDate datetime,
    @EndDate datetime
/*

=========================================================

功能:新增一个项目(任务)
参数:
    @ParentID        新增项目的父节点ID    
    @ProjectName         项目的名称
    @ProjectRemark     项目的介绍
    @Wright         项目的建立者
    @Status         项目状态
    @Scale         项目占整个项目的比例
    @StartDate         项目成立时间
    @EndDate         项目结束时间    

注释:相关的sproc_AddTeam,只添加项目节点的基本信息
=========================================================

*/
AS
DECLARE @classid int

--插入项目基本信息
INSERT INTO uds_class (classname,classremark,classtype,classparentid,classaddedby,classaddeddate,status)
    VALUES(@ProjectName,@ProjectRemark,0,@ParentID,@Wright,getdate(),@Status)
SET @classid = @@identity

--插入项目的相关信息
INSERT INTO uds_teaminfo (teamid,scale,startdate,enddate)
    VALUES(@classid,@Scale,@StartDate,@EndDate)

--插入项目成员的缺省权利
IF @ClassID>0
    INSERT INTO UDS_Assign_Rule (act_id,based_on,team_id) 
        SELECT act_id,2,@ClassID 
            FROM uds_DefaultRight
             WHERE objecttype = 2